package com.neusoft.gene.nep.grid.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

/**
 * @Description: TODO  区域网格信息
 * java实体类
 * @author: 君醉
 * @date: 2024/6/19 15:11
*/

@Getter
@Setter
//指定实体类对应的数据库表名为 "grid"
@TableName("grid")
@Data
//用于标记实体类为一个 Swagger 模型，用于生成 API 文档。value 属性指定模型名称，description 属性提供模型的描述信息。
@ApiModel(value = "Grid对象", description = "区域网格信息")
public class Grid implements Serializable {
    //用于序列化和反序列化对象，确保版本兼容性。
    private static final long serialVersionUID = 1L;

    //指定主键的生成策略为自增。
    @ApiModelProperty("网关编号")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty("网关名称")
    @TableField("gname")
    private String gname;

    @ApiModelProperty("所属父级网关ID")
    @TableField("pid")
    private Integer pid;

    @ApiModelProperty("区域的状态")
    @TableField("status")
    private Integer status =  1;
    @ApiModelProperty("区域级别")
    @TableField("level")
    private  Integer level =0;

    @TableField(exist = false)
    private List<Grid> children =new ArrayList<>();


}
